x86emul: correct segment override decode for 64-bit mode
authorJan Beulich <jbeulich@suse.com>
Mon, 16 Dec 2019 16:34:46 +0000 (17:34 +0100)
committerJan Beulich <jbeulich@suse.com>
Mon, 16 Dec 2019 16:34:46 +0000 (17:34 +0100)
commit99dd522c3fb54656a3ac7fbe56bf0c3aa9a527b8
tree27120c79c9365771b568348b2000243d0422dcc1
parent6dd95b02ea27f70384d79a5f9c5ffdf66463a05f
x86emul: correct segment override decode for 64-bit mode

The legacy / compatibility mode ES, CS, SS, and DS overrides are fully
ignored prefixes in 64-bit mode, i.e. they in particular don't cancel an
earlier FS or GS one. (They don't violate the REX-prefix-must-be-last
rule though.)

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
Tested-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c